Platform Development
some teams may build software solely for the other teams to use.
いくつかチームがある状況
「あるチームは、他のチームが使うソフトウェアを作る」
特定のチームをサポートする (supporting specific teams)
internal platformの話 👉 Platform engineering product teams
顧客は、そのソフトウェアを使うチーム(client team)
"easy to use"の罠
使うのが簡単なものは、client teamが必要とするものではない
They need flexibility, autonomy, and ownership, not magic.
柔軟性、自律性、オーナーシップ
simple programming interfaces with clear responsibilities, minimal side effects, and an “escape hatch” that allows teams to dig into details when they need to.
「明確な責務と最小限の副作用、そして必要なときは詳細に手を付けるのを可能にする「緊急用脱出口」をもった単純なプログラミングインターフェース」
想起:「作ったから使うのではなく、課題を解決するから自然と使われる」from YahooのAIプラットフォームのモデルモニタリングシステム
Focus on giving your customers the ability to solve problems on their own,
顧客(client team)が自身の問題を解決できる能力を提供する
(魚を釣ってあげるのではなく、魚の釣り方を教える的な)
conduct “exchange programs”
(顧客についての)理解を深めるために、client teamと交換プログラムを実施する
読書会より:この本のplatformの想定は、Team Topologiesのplatform teamよりも狭いかも
If your team builds software to help developers in general, rather than supporting specific teams, see “Vertical-Market Software” instead.
「特定のチームというよりも開発者一般を支援するソフトウェアを構築している場合は、代わりにVertical-Market Softwareを参照してください」